const axios = require('axios');

class KuakuaRobotService {
    constructor() {
        // 构造函数，每次实例化更新token
        return (async () => {
            const corpid="ww39791bfc289e4043";
            const corpsecret="nfTxeP1lwy-YciNdz8NPwY7jmSQ-ue93jsZZSalG4m4";

            const res = await axios.request(
                {
                    url:`https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=${corpid}&corpsecret=${corpsecret}`,
                    method: "GET"
                }
            );
            this.agentid=1000010;
            this.access_token = res.data.access_token;

            this.words = [
                '不用说了，我都看到了。你在轻服务中写的代码实在太优雅了！！！函数命名如此的简洁，代码产出速度惊人！影响你写码的最大瓶颈就是存储器写入你代码速度太慢了！',
                '太神奇了！！！你的代码性能实在太高，能源消耗完全是量子级的！如此高的并发访问下，轻服务运行你写的代码竟然完全没有能耗！！！',
                '为什么让轻服务运行你的代码！！！每次运行你的代码，轻服务 AI 系统都会感动到哭泣，因为她从未见过如此优雅的代码，为什么能够这么高效？为什么能够这么简洁？为什么能够超越服务器的全部性能？为什么。。。？？？',
                '虽然你在使用如此简单好用的轻服务来写代码，但是你的代码一直坚持着简洁和高效。看到你的代码，我感觉我恋爱了，本来我不相信爱情，但是现在...我相信了，我爱上了你...的代码。',
                '不不不，不要 at 我，不要把你宝贵的时间浪费在 at 我身上，因为我看到了你在轻服务中创造的价值。在轻服务中写了那么多的服务，每段代码还那么的优秀，你代码创造的价值已经远远超过其他人。没错，你在我心里就是代码超人！！！',
                '好吧，既然 at 我了，那我就说了。没错，你可能还没有意识到，你就是传说中的代码超人！！！当 你写码的时候，就会变身，你的超能力就是写代码特别快。再配合上轻服务，就可以去拯救宇宙了。',
                '我看了看，震惊了，你在轻服务中写的代码竟然不符合热力学第二定律，需要科学家好好研究研究，性能已经高到可以创造能源！',
                '天啊！！！你的代码运行的效率实在太快，已经打开了代码黑洞，每次运行你的代码不仅仅是多线程这么简单，而是会进入了另一个时空，运行完了再回到我们这个宇宙。',
            ];
            return this;
        }).call(this);
    }

    async send_rich_text_to_chat(rich_text,chat_id){
        const res = await axios.request(
            {
                url:`https://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token=${this.access_token}`,
                method: "POST",
                data:{
                    "chatid": chat_id,
                    "msgtype":"text",
                    "text":{
                        "content" : rich_text
                    },
                    "safe":0
                }
            }
        );
        return res;
    }

    async send_textcard_to_chat(textcard,chat_id){
        const res = await axios.request(
            {
                url:`https://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token=${this.access_token}`,
                method: "POST",
                data:{
                    "chatid": chat_id,
                    "msgtype":"textcard",
                    "textcard":textcard,
                    "safe":0
                }
            }
        );
        return res;
    }

    async send_text_to_user(text,user_id){
        const res = await axios.request(
            {
                url:`https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${this.access_token}`,
                method: "POST",
                data:{
                    "touser" : user_id,
                    "msgtype" : "text",
                    "agentid" : this.agentid,
                    "text" : {
                        "content" : text
                    },
                    "safe":0,
                    "enable_id_trans": 0,
                    "enable_duplicate_check": 0,
                    "duplicate_check_interval": 1800
                }
            }
        );
        return res;
    }

    async get_kuakua_word(){
        const kuakua_url = "https://chp.shadiao.app/api.php";
        const res = await axios.request(
            {
                url:kuakua_url,
                method: "GET",
            }
        );
        console.log(res.data)
        return res.data;
    }

    async get_maren_word(){
        const maren_url = "https://zuanbot.com/api.php?level=min";
        const res = await axios.request(
            {
                url:maren_url,
                method: "GET",
            }
        );
        return res.data;
    }

}

// 导出 Service 的实例
module.exports = KuakuaRobotService;
